package cn.sciento.farm.devicemanager.gateway.lorawan.grpc;

import cn.sciento.farm.devicemanager.lorawan.*;

/**
 * @author wumu
 * @version V1.0
 * @date 9/15/18
 * @time 7:12 PM
 */
public interface DeviceProfileService {

    // create creates the given device-profile.
    CreateDeviceProfileResponse create(CreateDeviceProfileRequest request);

    // get returns the device-profile matching the given id.
    GetDeviceProfileResponse get(GetDeviceProfileRequest request);

    // updateById updates the given device-profile.
    void update(UpdateDeviceProfileRequest request);

    // delete deletes the device-profile matching the given id.
    void delete(DeleteDeviceProfileRequest request);

    // list lists the available device-profiles.
    ListDeviceProfileResponse list(ListDeviceProfileRequest request);
}
